import type {ExtractPropTypes,} from 'vue'
import {buildProps} from "@/utils";

export const devCopyProps = buildProps({
    // 文字
    text: {
        type: String,
        default: ''
    },
    // el-tooltip props
    elTooltipAttrs: {
        type: Object,
        default: () => ({
            content: '点击复制',
        })
    },
    // 鼠标悬浮颜色
    hoverColor: {
        type: String,
        default: '#4684f7'
    },
    // 是否禁用
    disabled: {
        type: Boolean,
        default: false
    },
    // 是否显示 tooltip
    showTooltip: {
        type: Boolean,
        default: true
    },
    // 只复制text
    onlyCopyText: {
        type: Boolean,
        default: false
    },
    // 是否有成功、失败提示
    showMsg: {
        type: Boolean,
        default: true
    },
    // 是否显示复制icon
    showIcon: {
        type: Boolean,
        default: true
    },
    // 自定义icon样式
    iconStyles: {
        type: [Object, String],
        default: () => ({})
    },
    // 只能点击icon进行复制
    allowIconCopyOnly:{
        type: Boolean,
        default: false
    },
    // 是否去除复制结果中的空格
    removeSpacesOnCopy: {
        type: Boolean,
        default: false
    },
} as const)
export type DevCopyProps = ExtractPropTypes<typeof devCopyProps>
